Phòng đào tạo có hồ sơ sinh viên, thông tin môn học và dữ liệu ghi danh ở các bảng riêng biệt. Hãy tạo một báo cáo đặt đúng tên sinh viên bên cạnh đúng môn học.
Ba Yêu cầu của Bạn
- Tìm các môn học đang hoạt động của Emma Li.
- Liệt kê các ghi danh đang hoạt động kèm tên sinh viên và tên môn học.
- Cung cấp danh sách PY101 đang hoạt động cho sinh viên DSAI.
Chuẩn bị PostgreSQL
- Trong pgAdmin, mở tệp được cung cấp
lab6_7_setup.sqltừ thư mục của trợ giảngDSAI2202/lab6_7/và chạy toàn bộ tệp một lần. - Xác nhận số liệu cuối cùng: 22 sinh viên, 8 môn học, 37 lượt ghi danh.
- Chạy thiết lập kết nối ở bên phải. Lặp lại mỗi khi bạn mở một kết nối cơ sở dữ liệu mới.
- Kiểm tra ba bảng trước khi nối chúng.
Lab 7 sử dụng cùng thiết lập, bao gồm assignments, submissions, và lms_roster. Hôm nay, hãy sử dụng ba bảng hiển thị ở đây. Mọi nhân vật và bản ghi đều là hư cấu.
✍️ Truy vết Trước khi Nối
Tìm lượt ghi danh E01. Nó chứa mã sinh viên và mã môn học nào? Dùng thẻ Dữ liệu để tra ra tên sinh viên và tên môn học.
SET search_path TO lab6_7;SET search_path TO lab6_7;
SELECT student_id, student_name, programme
FROM students
ORDER BY student_id;SET search_path TO lab6_7;
SELECT course_code, course_title, credits
FROM courses
ORDER BY course_code;SET search_path TO lab6_7;
SELECT enrolment_id, student_id, course_code,
enrolment_status, score
FROM enrolments
ORDER BY enrolment_id;Xem trước Nhanh Ba Bảng
students: 22 dòng. student_id là khóa chính.
| student_id | student_name | programme |
|---|---|---|
| S101 | Alice Wong | DSAI |
| S102 | Ben Lau | CS |
| S105 | Emma Li | CS |
courses: 8 dòng. course_code là khóa chính.
| course_code | course_title | credits |
|---|---|---|
| SQL101 | SQL Fundamentals | 3 |
| PY101 | Python Programming | 3 |
| WEB101 | Web Databases | 3 |
enrolments: 37 dòng, bao gồm 30 đang hoạt động và 7 đã rút. enrolment_id là khóa chính.
| enrolment_id | student_id | course_code | enrolment_status |
|---|---|---|---|
| E01 | S101 | SQL101 | đang hoạt động |
| E04 | S104 | SQL101 | đã rút |
| E06 | S105 | PY101 | đang hoạt động |
Liên kết sinh viên
enrolments.student_id → students.student_idKhóa ngoại trỏ đến một sinh viên.
Liên kết môn học
enrolments.course_code → courses.course_codeKhóa ngoại trỏ đến một môn học.
Truy vết E01
S101 + SQL101Alice Wong + SQL Fundamentals.
Các mã lặp lại liên kết các bản ghi; tên và tiêu đề vẫn nằm trong bảng riêng của chúng. Một sinh viên có thể xuất hiện trong nhiều lượt ghi danh.